热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

至强秘笈|OpenVINO™工具套件,面向AI任务的“神奇改造车间”

OpenVINO™工具套件■OpenVINO™工具套件能够加速深度学习推理,支持异构部署,具备模型量化功能并预置多种优化过的AI框架。■它帮助爱奇艺

图片

OpenVINO™工具套件

■ OpenVINO™ 工具套件能够加速深度学习推理,支持异构部署,具备模型量化功能并预置多种优化过的AI框架。

■ 它帮助爱奇艺提升实时弹幕显示推理速度达5倍,提升文本检测推理性能达11倍。

■ 它帮助西门子MRI的AI分析效能提升达原来的5.5倍。

■ 它帮助首云将AI业务并发接入能力提升了2.4倍。

经历了之前几期对至强平台的揭秘,我们想必都已了解:英特尔® 至强® 平台对于AI应用的加速,从来都不是依靠某个单一的产品或技术特性来实现的。我们看到英特尔® AVX-512和英特尔® 深度学习加速(DL Boost)技术的导入,让至强平台有了能够加速AI任务,尤其是基于INT8和BF16这两种数据格式的AI任务所需的“VIP专用车道”;我们还看到面向英特尔® 架构优化的多种主流AI框架的出现,让AI应用更好地感知并充分利用“专用车道”的加速效果;还有Analytics Zoo,是打通大数据平台与AI应用平台的高速车道,是平衡AI铁三角——算力、算法和数据发展步骤的关键……所有这些与AI加速相关的产品特性和功能在组合后,才是至强平台加速AI应用的底蕴所在。

今天这期揭秘,我们的焦点将汇聚在OpenVINO™ 这款软件工具套件身上,它在英特尔® 架构平台上专攻AI应用加速的产品技术组合中也占据着举足轻重的地位。谈到它的主要功能,那就是“变形”或者“改造”,而这种变形或改造的对象,正是AI应用涉及的数据。

众所周知,AI应用原生的数据格式并不统一,不过大多数AI模型多采用传统的FP32数据格式,其实这种格式完全可以在损失很小精度的前提下,转换成BF16或INT8格式,以换取更高的处理效率或者说吞吐量,这正是英特尔为至强平台上导入和更新深度学习加速技术,或者说在CPU上实现INT8和BF16数据处理加速的源起,不过,要想真正用好这些加速特性,大家要么得人为地对AI模型实施数据格式转换,要么就得用更为专业和省心的工具来帮忙。

人为转换显然费时费力,不仅无法根据处理器平台特性实施优化,且转换后的模型也无法兼容不同的硬件平台。这就如同专为小型车优化的车道上,却不断驶来传统的大型车辆。驾车的司机要么只能选择维持原速度,甚至得降速前进,要么就必须在上路前自己动手将大车改成适合车道的尺寸,不论采用这两种方法中的哪一种,显然都无法便捷和充分地利用到至强® 平台提供的加速支持。

由英特尔推出的OpenVINO™ 工具套件,则是专业和省心工具的代表,它提供的模型量化功能,为上述问题提供了应对良方。它能让基于不同AI框架,如TensorFlow、MXNet、PyTorch等构建的FP32数据格式AI模型,在损失很少精度的情况下转化为INT8和BF16数据格式。

图片

                                                                      图一 OpenVINO™ 工具套件提供的模型量化功能

如图一所示,OpenVINO™ 工具套件就像是一个神奇的“自动化改造车间”,当基于FP32数据格式的AI模型来到这里时,都要自动化改造为可利用英特尔® AVX-512和英特尔® 深度学习加速技术提速的INT8和BF16数据格式。这就好比赛车在上场前都会针对赛道特点进行全面的优化改装,在甩掉了所有干扰速度、又不会影响行车安全的累赘后,就只剩勇往直前,疾速狂飙了!

除模型量化功能外,针对一系列AI应用场景,如视觉模拟、自动语音识别、自然语言处理及推荐系统等,OpenVINO™ 工具套件还提供了能提升它们开发和部署效率的组件,例如OpenVINO™ Model Server和OpenVINO™ Model Zoo等组件可对基于TensorFlow、PyTorch、MxNet、Keras等不同框架构建的训练模型实施更为高效的优化,并简化这些模型部署的流程及耗时。更值得期待的是,OpenVINO™ 工具套件还有基于通用API为用户智能选择AI加速硬件的功能,让用户的AI应用在一次编写之后,就可以更智能、也更有针对性地选择英特尔的CPU、VPU、GPU、FPGA、ASIC等芯片,来实现异构的部署及更优的加速能力。

目前,已经有很多行业和领域的企业用户开始利用OpenVINO™ 工具套件所提供的种种优势功能来为AI应用提供加速支持。例如在在线视频服务领域,OpenVINO™ 工具套件与英特尔® 至强® 可扩展处理器相结合,已帮助爱奇艺 Jarvis 深度学习云平台有效提升了 AI应用的推理效率,如图二所示,在典型的图像抠图应用场景中,OpenVINO™ 工具套件带来了5倍的推理速度提升,而在不良内容检测和文本检测场景中,效率提升更是达到了6倍和11倍之多[1]。

图片

                                                                   图二 OpenVINO™ 工具套件在爱奇艺AI应用场景中带来的性能提升

在医疗行业的应用中,西门子医疗团队选用了第二代英特尔® 至强® 可扩展处理器与OpenVINO™ 工具套件,以保证在极小准确率损失的情况下来加速心脏MRI的AI推理速度。如图三所示,在使用AI进行心脏图像分割的过程中,右上是未使用INT8模型的传统ONNX输出图像,而右下是使用INT8模型的输出图像,可以直观地看到,两者的输出成像质量几乎保持一致。同时,从推理速度来看,结合第二代英特尔® 至强® 可扩展处理器、英特尔® 深度学习加速技术以及OpenVINO™ 工具套件可使得心脏MRI的AI分析效能得以大幅增强——优化后的方案在量化和执行模型时,其性能可提升至未优化方案的5.5倍[2]。

图片

                                                                    图三 使用INT8模型前后的输出成像结果对比

OpenVINO™ Model Server组件对AI应用优化和部署的加速功效,也有实战用例予以佐证:首都在线旗下的云服务品牌——CDS首云就导入这一功能,并借助它对英特尔® 架构基础设施的专门优化、与既有云平台K8S的良好集成以及对多种主流深度学习框架的出色支持,大大简化了其AIaaS(AI云服务)方案的部署流程并提升了其生产效能。如图四所示,在其常见的实时视频非法内容检测场景对比测试中,使用OpenVINO™ Model Server组件的方案在支持的用户并发数量上远胜于对比组,相比采用Tensorflow Serving的方案提升了2.4倍[3]。

图片

                                                                     图四 CDS首云针对不良视频内容检测场景的验证测试结果

[1]如欲了解爱奇艺案例的更多技术细节,请访问:

https://www.intel.cn/content/www/cn/zh/analytics/artificial-intelligence/optimize-the-efficiency-of-dl-inference-and-create-smarter-video-services.html;

[2]  如欲了解西门子案例的更多技术细节,请访问:

https://www.intel.cn/content/www/cn/zh/service-providers/siemens-healthineers-accelerates-ai-for-cardiology.html;

[3]  测试配置:

测试组:处理器:单路英特尔® 至强® 金牌 6240Y 处理器,18核心/36线程,超线程开启,睿频关闭;内存:6 * 16GB 2666MHz DDR4;存储:2*英特尔S4510 SSD 480GB;BIOS:2.48;操作系统:CentOS Linux Release 7.8.2003(Core);Kernel版本:3.10.0-1127.19.1.el7.x86_64;OpenVINO Model Server版本:21.1;对比组:处理器:单路英特尔® 至强® 金牌 6240Y 处理器,18核心/36线程,超线程开启,睿频关闭;内存:6 * 16GB 2666MHz DDR4;存储:2*英特尔S4510 SSD 480GB;BIOS:2.48;操作系统:CentOS Linux Release 7.8.2003(Core);Kernel版本:3.10.0-1127.19.1.el7.x86_64;Tensorflow Serving版本:2.3.0。

 


推荐阅读
  • flowable工作流 流程变量_信也科技工作流平台的技术实践
    1背景随着公司业务发展及内部业务流程诉求的增长,目前信息化系统不能够很好满足期望,主要体现如下:目前OA流程引擎无法满足企业特定业务流程需求,且移动端体 ... [详细]
  • Google Play推出全新的应用内评价API,帮助开发者获取更多优质用户反馈。用户每天在Google Play上发表数百万条评论,这有助于开发者了解用户喜好和改进需求。开发者可以选择在适当的时间请求用户撰写评论,以获得全面而有用的反馈。全新应用内评价功能让用户无需返回应用详情页面即可发表评论,提升用户体验。 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 深度学习中的Vision Transformer (ViT)详解
    本文详细介绍了深度学习中的Vision Transformer (ViT)方法。首先介绍了相关工作和ViT的基本原理,包括图像块嵌入、可学习的嵌入、位置嵌入和Transformer编码器等。接着讨论了ViT的张量维度变化、归纳偏置与混合架构、微调及更高分辨率等方面。最后给出了实验结果和相关代码的链接。本文的研究表明,对于CV任务,直接应用纯Transformer架构于图像块序列是可行的,无需依赖于卷积网络。 ... [详细]
  • 2018年人工智能大数据的爆发,学Java还是Python?
    本文介绍了2018年人工智能大数据的爆发以及学习Java和Python的相关知识。在人工智能和大数据时代,Java和Python这两门编程语言都很优秀且火爆。选择学习哪门语言要根据个人兴趣爱好来决定。Python是一门拥有简洁语法的高级编程语言,容易上手。其特色之一是强制使用空白符作为语句缩进,使得新手可以快速上手。目前,Python在人工智能领域有着广泛的应用。如果对Java、Python或大数据感兴趣,欢迎加入qq群458345782。 ... [详细]
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • 本文介绍了C#中生成随机数的三种方法,并分析了其中存在的问题。首先介绍了使用Random类生成随机数的默认方法,但在高并发情况下可能会出现重复的情况。接着通过循环生成了一系列随机数,进一步突显了这个问题。文章指出,随机数生成在任何编程语言中都是必备的功能,但Random类生成的随机数并不可靠。最后,提出了需要寻找其他可靠的随机数生成方法的建议。 ... [详细]
  • Voicewo在线语音识别转换jQuery插件的特点和示例
    本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ... [详细]
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • Tomcat/Jetty为何选择扩展线程池而不是使用JDK原生线程池?
    本文探讨了Tomcat和Jetty选择扩展线程池而不是使用JDK原生线程池的原因。通过比较IO密集型任务和CPU密集型任务的特点,解释了为何Tomcat和Jetty需要扩展线程池来提高并发度和任务处理速度。同时,介绍了JDK原生线程池的工作流程。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • 本文介绍了Windows操作系统的版本及其特点,包括Windows 7系统的6个版本:Starter、Home Basic、Home Premium、Professional、Enterprise、Ultimate。Windows操作系统是微软公司研发的一套操作系统,具有人机操作性优异、支持的应用软件较多、对硬件支持良好等优点。Windows 7 Starter是功能最少的版本,缺乏Aero特效功能,没有64位支持,最初设计不能同时运行三个以上应用程序。 ... [详细]
  • 深入理解Kafka服务端请求队列中请求的处理
    本文深入分析了Kafka服务端请求队列中请求的处理过程,详细介绍了请求的封装和放入请求队列的过程,以及处理请求的线程池的创建和容量设置。通过场景分析、图示说明和源码分析,帮助读者更好地理解Kafka服务端的工作原理。 ... [详细]
  • 一句话解决高并发的核心原则
    本文介绍了解决高并发的核心原则,即将用户访问请求尽量往前推,避免访问CDN、静态服务器、动态服务器、数据库和存储,从而实现高性能、高并发、高可扩展的网站架构。同时提到了Google的成功案例,以及适用于千万级别PV站和亿级PV网站的架构层次。 ... [详细]
author-avatar
飞龙在天2602911735
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有